home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / pcl / cl-nd-cl.lha / clue / clio / ol-images.lisp < prev    next >
Text File  |  1990-07-19  |  62KB  |  2,170 lines

  1. ;; -*- Mode:Lisp; Package:CLIO-OPEN; Base:10; Lowercase:T; Fonts:(CPTFONT); Syntax:Common-Lisp -*-
  2.  
  3.  
  4. ;;;----------------------------------------------------------------------------------+
  5. ;;;                                                                                  |
  6. ;;;                          TEXAS INSTRUMENTS INCORPORATED                          |
  7. ;;;                                  P.O. BOX 149149                                 |
  8. ;;;                                AUSTIN, TEXAS 78714                               |
  9. ;;;                                                                                  |
  10. ;;;             Copyright (C) 1989, 1990 Texas Instruments Incorporated.             |
  11. ;;;                                                                                  |
  12. ;;; Permission is granted to any individual or institution to use, copy, modify, and |
  13. ;;; distribute this software, provided that  this complete copyright and  permission |
  14. ;;; notice is maintained, intact, in all copies and supporting documentation.        |
  15. ;;;                                                                                  |
  16. ;;; Texas Instruments Incorporated provides this software "as is" without express or |
  17. ;;; implied warranty.                                                                |
  18. ;;;                                                                                  |
  19. ;;;----------------------------------------------------------------------------------+
  20.  
  21. (in-package "CLIO-OPEN")
  22.  
  23. ;;;----------------------------------------------------------------------------+
  24. ;;;                                                                            |
  25. ;;;                         Scroll Bar Geometry                                |
  26. ;;;                                                                            |
  27. ;;;----------------------------------------------------------------------------+
  28.  
  29. (defconstant
  30.   *scrollbar-dimensions*
  31.   (list
  32.     :small       (make-scrollbar
  33.            :anchor-height 5 
  34.            :anchor-width 13 
  35.            :arrow-height 4    
  36.            :arrow-width 6
  37.            :cable-margin 1
  38.            :cable-width 3
  39.            :margin 2
  40.            )
  41.     :medium      (make-scrollbar
  42.            :anchor-height 6 
  43.            :anchor-width 15 
  44.            :arrow-height 5    
  45.            :arrow-width 8
  46.            :cable-margin 1 
  47.            :cable-width 3 
  48.            :margin 2 
  49.            )
  50.     :large       (make-scrollbar
  51.            :anchor-height 7 
  52.            :anchor-width 17 
  53.            :arrow-height 6    
  54.            :arrow-width 10
  55.            :cable-margin 1
  56.            :cable-width 3
  57.            :margin 3
  58.            )
  59.     :extra-large (make-scrollbar
  60.            :anchor-height 9
  61.            :anchor-width 21
  62.            :arrow-height 8   
  63.            :arrow-width 14
  64.            :cable-margin 2
  65.            :cable-width 5
  66.            :margin 3
  67.            ))
  68.   "OPEN LOOK dimensions for scrollbar bitmaps (in pixels).")
  69.  
  70. (defimage small-vertical-elevator
  71.   '#*0111111111110
  72.   '#*1000000000011
  73.   '#*1000000000011
  74.   '#*1000000000011
  75.   '#*1000000000011
  76.   '#*1000011000011
  77.   '#*1000111100011
  78.   '#*1001111110011
  79.   '#*1001111110011
  80.   '#*1000000000011
  81.   '#*1000000000011
  82.   '#*1000000000011
  83.   '#*1000000000011
  84.   '#*1111111111111
  85.   '#*1000000000011
  86.   '#*1000000000011
  87.   '#*1000000000011
  88.   '#*1000000000011
  89.   '#*1000000000011
  90.   '#*1000000000011
  91.   '#*1000000000011
  92.   '#*1000000000011
  93.   '#*1000000000011
  94.   '#*1000000000011
  95.   '#*1000000000011
  96.   '#*1000000000011
  97.   '#*1111111111111
  98.   '#*1000000000011
  99.   '#*1000000000011
  100.   '#*1000000000011
  101.   '#*1000000000011
  102.   '#*1001111110011
  103.   '#*1001111110011
  104.   '#*1000111100011
  105.   '#*1000011000011
  106.   '#*1000000000011
  107.   '#*1000000000011
  108.   '#*1000000000011
  109.   '#*1000000000011
  110.   '#*1111111111111
  111.   '#*0111111111110
  112.   )
  113.  
  114. (defimage medium-vertical-elevator
  115.   '#*011111111111110
  116.   '#*100000000000011
  117.   '#*100000000000011
  118.   '#*100000000000011
  119.   '#*100000000000011
  120.   '#*100000110000011
  121.   '#*100001111000011
  122.   '#*100011111100011
  123.   '#*100111111110011
  124.   '#*100111111110011
  125.   '#*100000000000011
  126.   '#*100000000000011
  127.   '#*100000000000011
  128.   '#*100000000000011
  129.   '#*100000000000011
  130.   '#*111111111111111
  131.   '#*100000000000011
  132.   '#*100000000000011
  133.   '#*100000000000011
  134.   '#*100000000000011
  135.   '#*100000000000011
  136.   '#*100000000000011
  137.   '#*100000000000011
  138.   '#*100000000000011
  139.   '#*100000000000011
  140.   '#*100000000000011
  141.   '#*100000000000011
  142.   '#*100000000000011
  143.   '#*100000000000011
  144.   '#*100000000000011
  145.   '#*111111111111111
  146.   '#*100000000000011
  147.   '#*100000000000011
  148.   '#*100000000000011
  149.   '#*100000000000011
  150.   '#*100000000000011
  151.   '#*100111111110011
  152.   '#*100111111110011
  153.   '#*100011111100011
  154.   '#*100001111000011
  155.   '#*100000110000011
  156.   '#*100000000000011
  157.   '#*100000000000011
  158.   '#*100000000000011
  159.   '#*100000000000011
  160.   '#*111111111111111
  161.   '#*011111111111110
  162.   )
  163.  
  164. (defimage large-vertical-elevator
  165.   '#*01111111111111110
  166.   '#*10000000000000011
  167.   '#*10000000000000011
  168.   '#*10000000000000011
  169.   '#*10000000000000011
  170.   '#*10000001100000011
  171.   '#*10000011110000011
  172.   '#*10000111111000011
  173.   '#*10001111111100011
  174.   '#*10011111111110011
  175.   '#*10011111111110011
  176.   '#*10000000000000011
  177.   '#*10000000000000011
  178.   '#*10000000000000011
  179.   '#*10000000000000011
  180.   '#*10000000000000011
  181.   '#*10000000000000011
  182.   '#*11111111111111111
  183.   '#*10000000000000011
  184.   '#*10000000000000011
  185.   '#*10000000000000011
  186.   '#*10000000000000011
  187.   '#*10000000000000011
  188.   '#*10000000000000011
  189.   '#*10000000000000011
  190.   '#*10000000000000011
  191.   '#*10000000000000011
  192.   '#*10000000000000011
  193.   '#*10000000000000011
  194.   '#*10000000000000011
  195.   '#*10000000000000011
  196.   '#*10000000000000011
  197.   '#*10000000000000011
  198.   '#*10000000000000011
  199.   '#*11111111111111111
  200.   '#*10000000000000011
  201.   '#*10000000000000011
  202.   '#*10000000000000011
  203.   '#*10000000000000011
  204.   '#*10000000000000011
  205.   '#*10000000000000011
  206.   '#*10011111111110011
  207.   '#*10011111111110011
  208.   '#*10001111111100011
  209.   '#*10000111111000011
  210.   '#*10000011110000011
  211.   '#*10000001100000011
  212.   '#*10000000000000011
  213.   '#*10000000000000011
  214.   '#*10000000000000011
  215.   '#*10000000000000011
  216.   '#*01111111111111111
  217.   '#*01111111111111100  
  218.   )
  219.  
  220. (defimage extra-large-vertical-elevator
  221.   '#*011111111111111111110
  222.   '#*100000000000000000011
  223.   '#*100000000000000000011
  224.   '#*100000000000000000011
  225.   '#*100000000000000000011
  226.   '#*100000000000000000011
  227.   '#*100000000110000000011
  228.   '#*100000001111000000011
  229.   '#*100000011111100000011
  230.   '#*100000111111110000011
  231.   '#*100001111111111000011
  232.   '#*100011111111111100011
  233.   '#*100111111111111110011
  234.   '#*100111111111111110011
  235.   '#*100000000000000000011
  236.   '#*100000000000000000011
  237.   '#*100000000000000000011
  238.   '#*100000000000000000011
  239.   '#*100000000000000000011
  240.   '#*100000000000000000011
  241.   '#*100000000000000000011
  242.   '#*111111111111111111111
  243.   '#*100000000000000000011
  244.   '#*100000000000000000011
  245.   '#*100000000000000000011
  246.   '#*100000000000000000011
  247.   '#*100000000000000000011
  248.   '#*100000000000000000011
  249.   '#*100000000000000000011
  250.   '#*100000000000000000011
  251.   '#*100000000000000000011
  252.   '#*100000000000000000011
  253.   '#*100000000000000000011
  254.   '#*100000000000000000011
  255.   '#*100000000000000000011
  256.   '#*100000000000000000011
  257.   '#*100000000000000000011
  258.   '#*100000000000000000011
  259.   '#*100000000000000000011
  260.   '#*100000000000000000011
  261.   '#*100000000000000000011
  262.   '#*100000000000000000011
  263.   '#*111111111111111111111
  264.   '#*100000000000000000011
  265.   '#*100000000000000000011
  266.   '#*100000000000000000011
  267.   '#*100000000000000000011
  268.   '#*100000000000000000011
  269.   '#*100000000000000000011
  270.   '#*100000000000000000011
  271.   '#*100111111111111110011
  272.   '#*100111111111111110011
  273.   '#*100011111111111100011
  274.   '#*100001111111111000011
  275.   '#*100000111111110000011
  276.   '#*100000011111100000011
  277.   '#*100000001111000000011
  278.   '#*100000000110000000011
  279.   '#*100000000000000000011
  280.   '#*100000000000000000011
  281.   '#*100000000000000000011
  282.   '#*100000000000000000011
  283.   '#*100000000000000000011
  284.   '#*111111111111111111111
  285.   '#*011111111111111111100      
  286.   )
  287.  
  288.  
  289.  
  290. (defimage small-horizontal-elevator
  291.   '#*01111111111111111111111111111111111111110
  292.   '#*10000000000001000000000000100000000000011
  293.   '#*10000000000001000000000000100000000000011
  294.   '#*10000001100001000000000000100001100000011
  295.   '#*10000011100001000000000000100001110000011
  296.   '#*10000111100001000000000000100001111000011
  297.   '#*10000111100001000000000000100001111000011
  298.   '#*10000011100001000000000000100001110000011
  299.   '#*10000001100001000000000000100001100000011
  300.   '#*10000000000001000000000000100000000000011
  301.   '#*10000000000001000000000000100000000000011
  302.   '#*11111111111111111111111111111111111111111
  303.   '#*01111111111111111111111111111111111111110)
  304.  
  305.  
  306. (defimage medium-horizontal-elevator
  307.   '#*01111111111111111111111111111111111111111111110
  308.   '#*10000000000000010000000000000010000000000000011
  309.   '#*10000000000000010000000000000010000000000000011
  310.   '#*10000000110000010000000000000010000011000000011
  311.   '#*10000001110000010000000000000010000011100000011
  312.   '#*10000011110000010000000000000010000011110000011
  313.   '#*10000111110000010000000000000010000011111000011
  314.   '#*10000111110000010000000000000010000011111000011
  315.   '#*10000011110000010000000000000010000011110000011
  316.   '#*10000001110000010000000000000010000011100000011
  317.   '#*10000000110000010000000000000010000011000000011
  318.   '#*10000000000000010000000000000010000000000000011
  319.   '#*10000000000000010000000000000010000000000000011
  320.   '#*11111111111111111111111111111111111111111111111
  321.   '#*01111111111111111111111111111111111111111111110)
  322.  
  323.  
  324. (defimage large-horizontal-elevator
  325.   '#*01111111111111111111111111111111111111111111111111100
  326.   '#*10000000000000000100000000000000001000000000000000011
  327.   '#*10000000000000000100000000000000001000000000000000011
  328.   '#*10000000011000000100000000000000001000000110000000011
  329.   '#*10000000111000000100000000000000001000000111000000011
  330.   '#*10000001111000000100000000000000001000000111100000011
  331.   '#*10000011111000000100000000000000001000000111110000011
  332.   '#*10000111111000000100000000000000001000000111111000011
  333.   '#*10000111111000000100000000000000001000000111111000011
  334.   '#*10000011111000000100000000000000001000000111110000011
  335.   '#*10000001111000000100000000000000001000000111100000011
  336.   '#*10000000111000000100000000000000001000000111000000011
  337.   '#*10000000011000000100000000000000001000000110000000011
  338.   '#*10000000000000000100000000000000001000000000000000011
  339.   '#*10000000000000000100000000000000001000000000000000011
  340.   '#*11111111111111111111111111111111111111111111111111110
  341.   '#*01111111111111111111111111111111111111111111111111110)
  342.  
  343.  
  344. (defimage extra-large-horizontal-elevator
  345.   '#*01111111111111111111111111111111111111111111111111111111111111110
  346.   '#*10000000000000000000010000000000000000000010000000000000000000011
  347.   '#*10000000000000000000010000000000000000000010000000000000000000011
  348.   '#*10000000000011000000010000000000000000000010000000110000000000011
  349.   '#*10000000000111000000010000000000000000000010000000111000000000011
  350.   '#*10000000001111000000010000000000000000000010000000111100000000011
  351.   '#*10000000011111000000010000000000000000000010000000111110000000011
  352.   '#*10000000111111000000010000000000000000000010000000111111000000011
  353.   '#*10000001111111000000010000000000000000000010000000111111100000011
  354.   '#*10000011111111000000010000000000000000000010000000111111110000011
  355.   '#*10000011111111000000010000000000000000000010000000111111110000011
  356.   '#*10000001111111000000010000000000000000000010000000111111100000011
  357.   '#*10000000111111000000010000000000000000000010000000111111000000011
  358.   '#*10000000011111000000010000000000000000000010000000111110000000011
  359.   '#*10000000001111000000010000000000000000000010000000111100000000011
  360.   '#*10000000000111000000010000000000000000000010000000111000000000011
  361.   '#*10000000000011000000010000000000000000000010000000110000000000011
  362.   '#*10000000000000000000010000000000000000000010000000000000000000011
  363.   '#*10000000000000000000010000000000000000000010000000000000000000011
  364.   '#*11111111111111111111111111111111111111111111111111111111111111110
  365.   '#*01111111111111111111111111111111111111111111111111111111111111110)
  366.  
  367. (defparameter
  368.   *scrollbar-images*
  369.   (list
  370.     :vertical   (list
  371.           :small       small-vertical-elevator
  372.           :medium      medium-vertical-elevator
  373.           :large       large-vertical-elevator
  374.           :extra-large extra-large-vertical-elevator
  375.           )
  376.     :horizontal (list
  377.           :small       small-horizontal-elevator
  378.           :medium      medium-horizontal-elevator
  379.           :large       large-horizontal-elevator
  380.           :extra-large extra-large-horizontal-elevator
  381.           )
  382.     ))
  383.  
  384.  
  385. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  386. ;; text images
  387.  
  388. (defparameter
  389.   *text-caret-dimensions*
  390.   (list
  391.     :small        (make-text-caret 
  392.             :height    5
  393.             :width     5
  394.             :baseline-offset  2)
  395.     :medium       (make-text-caret 
  396.             :height    6
  397.             :width     5
  398.             :inactive-height  7
  399.             :baseline-offset  2)
  400.     :large        (make-text-caret 
  401.             :height    7
  402.             :width     7
  403.             :baseline-offset  2)
  404.     :extra-large  (make-text-caret 
  405.             :height    9
  406.             :width     9
  407.             :baseline-offset  3)))
  408.  
  409. (defimage small-active-text-caret
  410.    '#*00100
  411.    '#*00100
  412.    '#*01110
  413.    '#*01110
  414.    '#*11111)
  415.  
  416. (defimage small-inactive-text-caret
  417.    '#*00100
  418.    '#*01010
  419.    '#*10101
  420.    '#*01010
  421.    '#*00100)
  422.  
  423. (defimage medium-active-text-caret
  424.    '#*00100
  425.    '#*00100
  426.    '#*01110
  427.    '#*01110
  428.    '#*11111
  429.    '#*11111)
  430.  
  431. (defimage medium-inactive-text-caret
  432.    '#*0001000
  433.    '#*0010100
  434.    '#*0101010
  435.    '#*1010101
  436.    '#*0101010
  437.    '#*0010100
  438.    '#*0001000)
  439.  
  440. (defimage large-active-text-caret
  441.    '#*0001000
  442.    '#*0001000
  443.    '#*0011100
  444.    '#*0011100
  445.    '#*0111110
  446.    '#*0111110
  447.    '#*1111111)
  448.  
  449. (defimage large-inactive-text-caret
  450.    '#*0001000
  451.    '#*0010100
  452.    '#*0101010
  453.    '#*1010101
  454.    '#*0101010
  455.    '#*0010100
  456.    '#*0001000)
  457.  
  458. (defimage extra-large-active-text-caret
  459.    '#*000010000
  460.    '#*000010000
  461.    '#*000111000
  462.    '#*000111000
  463.    '#*001111100
  464.    '#*001111100
  465.    '#*011111110
  466.    '#*011111110
  467.    '#*111111111)
  468.  
  469. (defimage extra-large-inactive-text-caret
  470.    '#*000010000
  471.    '#*000101000
  472.    '#*001010100
  473.    '#*010101010
  474.    '#*101010101
  475.    '#*010101010
  476.    '#*001010100
  477.    '#*000101000
  478.    '#*000010000)
  479.  
  480. (defparameter
  481.   *text-caret-images*
  482.   (list :active   (list
  483.             :small        small-active-text-caret
  484.             :medium       medium-active-text-caret
  485.             :large        large-active-text-caret
  486.             :extra-large  extra-large-active-text-caret)
  487.     :inactive (list
  488.             :small        small-inactive-text-caret
  489.             :medium       medium-inactive-text-caret
  490.             :large        large-inactive-text-caret
  491.             :extra-large  extra-large-inactive-text-caret)))
  492.  
  493. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  494. ;; scrolling text button images
  495.  
  496. (defimage small-text-scroll-left-arrow
  497.    '#*0111111111100
  498.    '#*1000000000010
  499.    '#*1000000000011
  500.    '#*1000001100011
  501.    '#*1000011100011
  502.    '#*1000111100011
  503.    '#*1000111100011
  504.    '#*1000011100011
  505.    '#*1000001100011
  506.    '#*1000000000011
  507.    '#*1000000000011
  508.    '#*0111111111111
  509.    '#*0011111111110)
  510.  
  511. (defimage small-text-scroll-left-highlighted-arrow
  512.    '#*0111111111100
  513.    '#*1000000000010
  514.    '#*1011111111011
  515.    '#*1011110011011
  516.    '#*1011100011011
  517.    '#*1011000011011
  518.    '#*1011000011011
  519.    '#*1011100011011
  520.    '#*1011110011011
  521.    '#*1011111111011
  522.    '#*1000000000011
  523.    '#*0111111111111
  524.    '#*0011111111110)
  525.  
  526. (defimage small-text-scroll-right-arrow
  527.    '#*0111111111100
  528.    '#*1000000000010
  529.    '#*1000000000011
  530.    '#*1000110000011
  531.    '#*1000111000011
  532.    '#*1000111100011
  533.    '#*1000111100011
  534.    '#*1000111000011
  535.    '#*1000110000011
  536.    '#*1000000000011
  537.    '#*1000000000011
  538.    '#*0111111111111
  539.    '#*0011111111110)
  540.  
  541. (defimage small-text-scroll-right-highlighted-arrow
  542.    '#*0111111111100
  543.    '#*1000000000010
  544.    '#*1011111111011
  545.    '#*1011001111011
  546.    '#*1011000111011
  547.    '#*1011000011011
  548.    '#*1011000011011
  549.    '#*1011000111011
  550.    '#*1011001111011
  551.    '#*1011111111011
  552.    '#*1000000000011
  553.    '#*0111111111111
  554.    '#*0011111111110)
  555.  
  556.  
  557. (defimage medium-text-scroll-left-arrow 
  558.    '#*011111111111100
  559.    '#*100000000000010
  560.    '#*100000000000011
  561.    '#*100000011000011
  562.    '#*100000111000011
  563.    '#*100001111000011
  564.    '#*100011111000011
  565.    '#*100011111000011
  566.    '#*100001111000011
  567.    '#*100000111000011
  568.    '#*100000011000011
  569.    '#*100000000000011
  570.    '#*100000000000011
  571.    '#*011111111111111
  572.    '#*001111111111110)
  573.  
  574. (defimage medium-text-scroll-left-highlighted-arrow
  575.    '#*011111111111100
  576.    '#*100000000000010
  577.    '#*101111111111011
  578.    '#*101111100111011
  579.    '#*101111000111011
  580.    '#*101110000111011
  581.    '#*101100000111011
  582.    '#*101100000111011
  583.    '#*101110000111011
  584.    '#*101111000111011
  585.    '#*101111100111011
  586.    '#*101111111111011
  587.    '#*100000000000011
  588.    '#*011111111111111
  589.    '#*001111111111110)
  590.  
  591. (defimage medium-text-scroll-right-arrow
  592.    '#*011111111111100
  593.    '#*100000000000010
  594.    '#*100000000000011
  595.    '#*100001100000011
  596.    '#*100001110000011
  597.    '#*100001111000011
  598.    '#*100001111100011
  599.    '#*100001111100011
  600.    '#*100001111000011
  601.    '#*100001110000011
  602.    '#*100001100000011
  603.    '#*100000000000011
  604.    '#*100000000000011
  605.    '#*011111111111111
  606.    '#*001111111111110)
  607.  
  608. (defimage medium-text-scroll-right-highlighted-arrow
  609.    '#*011111111111100
  610.    '#*100000000000010
  611.    '#*101111111111011
  612.    '#*101110011111011
  613.    '#*101110001111011
  614.    '#*101110000111011
  615.    '#*101110000011011
  616.    '#*101110000011011
  617.    '#*101110000111011
  618.    '#*101110001111011
  619.    '#*101110011111011
  620.    '#*101111111111011
  621.    '#*100000000000011
  622.    '#*011111111111111
  623.    '#*001111111111110)
  624.  
  625.  
  626. (defimage large-text-scroll-left-arrow 
  627.    '#*01111111111111100
  628.    '#*10000000000000010
  629.    '#*10000000000000011
  630.    '#*10000000011000011
  631.    '#*10000000111000011
  632.    '#*10000001111000011
  633.    '#*10000011111000011
  634.    '#*10000111111000011
  635.    '#*10000111111000011
  636.    '#*10000011111000011
  637.    '#*10000001111000011
  638.    '#*10000000111000011
  639.    '#*10000000011000011
  640.    '#*10000000000000011
  641.    '#*10000000000000011
  642.    '#*01111111111111111
  643.    '#*00111111111111110)
  644.  
  645. (defimage large-text-scroll-left-highlighted-arrow
  646.    '#*01111111111111100
  647.    '#*10000000000000010
  648.    '#*10111111111111011
  649.    '#*10111111100111011
  650.    '#*10111111000111011
  651.    '#*10111110000111011
  652.    '#*10111100000111011
  653.    '#*10111000000111011
  654.    '#*10111000000111011
  655.    '#*10111100000111011
  656.    '#*10111110000111011
  657.    '#*10111111000111011
  658.    '#*10111111100111011
  659.    '#*10111111111111011
  660.    '#*10000000000000011
  661.    '#*01111111111111111
  662.    '#*00111111111111110)
  663.  
  664. (defimage large-text-scroll-right-arrow
  665.    '#*01111111111111100
  666.    '#*10000000000000010
  667.    '#*10000000000000011
  668.    '#*10000110000000011
  669.    '#*10000111000000011
  670.    '#*10000111100000011
  671.    '#*10000111110000011
  672.    '#*10000111111000011
  673.    '#*10000111111000011
  674.    '#*10000111110000011
  675.    '#*10000111100000011
  676.    '#*10000111000000011
  677.    '#*10000110000000011
  678.    '#*10000000000000011
  679.    '#*10000000000000011
  680.    '#*01111111111111111
  681.    '#*00111111111111110)
  682.  
  683.  
  684.  
  685. (defimage large-text-scroll-right-highlighted-arrow
  686.    '#*01111111111111100
  687.    '#*10000000000000010
  688.    '#*10111111111111011
  689.    '#*10111001111111011
  690.    '#*10111000111111011
  691.    '#*10111000011111011
  692.    '#*10111000001111011
  693.    '#*10111000000111011
  694.    '#*10111000000111011
  695.    '#*10111000001111011
  696.    '#*10111000011111011
  697.    '#*10111000111111011
  698.    '#*10111001111111011
  699.    '#*10111111111111011
  700.    '#*10000000000000011
  701.    '#*01111111111111111
  702.    '#*00111111111111110)
  703.  
  704.  
  705. (defimage extra-large-text-scroll-left-arrow 
  706.    '#*0111111111111111111111100
  707.    '#*1000000000000000000000010
  708.    '#*1000000000000000000000011
  709.    '#*1000000000000000000000011
  710.    '#*1000000000000000000000011
  711.    '#*1000000000000011000000011
  712.    '#*1000000000000111000000011
  713.    '#*1000000000001111000000011
  714.    '#*1000000000011111000000011
  715.    '#*1000000000111111000000011
  716.    '#*1000000001111111000000011
  717.    '#*1000000011111111000000011
  718.    '#*1000000011111111000000011
  719.    '#*1000000001111111000000011
  720.    '#*1000000000111111000000011
  721.    '#*1000000000011111000000011
  722.    '#*1000000000001111000000011
  723.    '#*1000000000000111000000011
  724.    '#*1000000000000011000000011
  725.    '#*1000000000000000000000011
  726.    '#*1000000000000000000000011
  727.    '#*1000000000000000000000011
  728.    '#*1000000000000000000000011
  729.    '#*0111111111111111111111111
  730.    '#*0011111111111111111111110)
  731.  
  732. (defimage extra-large-text-scroll-left-highlighted-arrow
  733.    '#*0111111111111111111111100
  734.    '#*1000000000000000000000010
  735.    '#*1011111111111111111111011
  736.    '#*1011111111111111111111011
  737.    '#*1011111111111111111111011
  738.    '#*1011111111111100111111011
  739.    '#*1011111111111000111111011
  740.    '#*1011111111110000111111011
  741.    '#*1011111111100000111111011
  742.    '#*1011111111000000111111011
  743.    '#*1011111110000000111111011
  744.    '#*1011111100000000111111011
  745.    '#*1011111100000000111111011
  746.    '#*1011111110000000111111011
  747.    '#*1011111111000000111111011
  748.    '#*1011111111100000111111011
  749.    '#*1011111111110000111111011
  750.    '#*1011111111111000111111011
  751.    '#*1011111111111100111111011
  752.    '#*1011111111111111111111011
  753.    '#*1011111111111111111111011
  754.    '#*1011111111111111111111011
  755.    '#*1000000000000000000000011
  756.    '#*0111111111111111111111111
  757.    '#*0011111111111111111111110)
  758.  
  759. (defimage extra-large-text-scroll-right-arrow
  760.    '#*0111111111111111111111100
  761.    '#*1000000000000000000000010
  762.    '#*1000000000000000000000011
  763.    '#*1000000000000000000000011
  764.    '#*1000000000000000000000011
  765.    '#*1000000011000000000000011
  766.    '#*1000000011100000000000011
  767.    '#*1000000011110000000000011
  768.    '#*1000000011111000000000011
  769.    '#*1000000011111100000000011
  770.    '#*1000000011111110000000011
  771.    '#*1000000011111111000000011
  772.    '#*1000000011111111000000011
  773.    '#*1000000011111110000000011
  774.    '#*1000000011111100000000011
  775.    '#*1000000011111000000000011
  776.    '#*1000000011110000000000011
  777.    '#*1000000011100000000000011
  778.    '#*1000000011000000000000011
  779.    '#*1000000000000000000000011
  780.    '#*1000000000000000000000011
  781.    '#*1000000000000000000000011
  782.    '#*1000000000000000000000011
  783.    '#*0111111111111111111111111
  784.    '#*0011111111111111111111110)
  785.  
  786. (defimage extra-large-text-scroll-right-highlighted-arrow
  787.    '#*0111111111111111111111100
  788.    '#*1000000000000000000000010
  789.    '#*1011111111111111111111011
  790.    '#*1011111111111111111111011
  791.    '#*1011111111111111111111011
  792.    '#*1011111100111111111111011
  793.    '#*1011111100011111111111011
  794.    '#*1011111100001111111111011
  795.    '#*1011111100000111111111011
  796.    '#*1011111100000011111111011
  797.    '#*1011111100000001111111011
  798.    '#*1011111100000000111111011
  799.    '#*1011111100000000111111011
  800.    '#*1011111100000001111111011
  801.    '#*1011111100000011111111011
  802.    '#*1011111100000111111111011
  803.    '#*1011111100001111111111011
  804.    '#*1011111100011111111111011
  805.    '#*1011111100111111111111011
  806.    '#*1011111111111111111111011
  807.    '#*1011111111111111111111011
  808.    '#*1011111111111111111111011
  809.    '#*1000000000000000000000011
  810.    '#*0111111111111111111111111
  811.    '#*0011111111111111111111110)
  812.  
  813. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  814. ;; scrolling numeric button images
  815.  
  816. (defimage small-numeric-scroll-button
  817.    '#*011111111111111111111100
  818.    '#*100000000001000000000010
  819.    '#*100000000001000000000011
  820.    '#*100000000001000000000011
  821.    '#*100001100001001111110011
  822.    '#*100011110001001111110011
  823.    '#*100111111001000111100011
  824.    '#*100111111001000011000011
  825.    '#*100000000001000000000011
  826.    '#*100000000001000000000011
  827.    '#*100000000001000000000011
  828.    '#*011111111111111111111111
  829.    '#*001111111111111111111110)
  830.  
  831. (defimage small-numeric-scroll-up-highlighted-button
  832.    '#*011111111111111111111100
  833.    '#*100000000001000000000010
  834.    '#*101111111101000000000011
  835.    '#*101111111101000000000011
  836.    '#*101110011101001111110011
  837.    '#*101100001101001111110011
  838.    '#*101000000101000111100011
  839.    '#*101000000101000011000011
  840.    '#*101111111101000000000011
  841.    '#*101111111101000000000011
  842.    '#*100000000001000000000011
  843.    '#*011111111111111111111111
  844.    '#*001111111111111111111110)
  845.  
  846. (defimage small-numeric-scroll-down-highlighted-button
  847.    '#*011111111111111111111100
  848.    '#*100000000001000000000010
  849.    '#*100000000001011111111011
  850.    '#*100000000001011111111011
  851.    '#*100001100001010000001011
  852.    '#*100011110001010000001011
  853.    '#*100111111001011000011011
  854.    '#*100111111001011100111011
  855.    '#*100000000001011111111011
  856.    '#*100000000001011111111011
  857.    '#*100000000001000000000011
  858.    '#*011111111111111111111111
  859.    '#*001111111111111111111110)
  860.  
  861. (defimage medium-numeric-scroll-button
  862.    '#*0111111111111111111111111100
  863.    '#*1000000000000100000000000010
  864.    '#*1000000000000100000000000011
  865.    '#*1000000000000100000000000011
  866.    '#*1000001100000100111111110011
  867.    '#*1000011110000100111111110011
  868.    '#*1000111111000100011111100011
  869.    '#*1001111111100100001111000011
  870.    '#*1001111111100100000110000011
  871.    '#*1000000000000100000000000011
  872.    '#*1000000000000100000000000011
  873.    '#*1000000000000100000000000011
  874.    '#*1000000000000100000000000011
  875.    '#*0111111111111111111111111111
  876.    '#*0011111111111111111111111110)
  877.  
  878. (defimage medium-numeric-scroll-up-highlighted-button
  879.    '#*0111111111111111111111111100
  880.    '#*1000000000000100000000000010
  881.    '#*1011111111110100000000000011
  882.    '#*1011111111110100000000000011
  883.    '#*1011110011110100111111110011
  884.    '#*1011100001110100111111110011
  885.    '#*1011000000110100011111100011
  886.    '#*1010000000010100001111000011
  887.    '#*1010000000010100000110000011
  888.    '#*1011111111110100000000000011
  889.    '#*1011111111110100000000000011
  890.    '#*1011111111110100000000000011
  891.    '#*1000000000000100000000000011
  892.    '#*0111111111111111111111111111
  893.    '#*0011111111111111111111111110)
  894.  
  895. (defimage medium-numeric-scroll-down-highlighted-button
  896.    '#*0111111111111111111111111100
  897.    '#*1000000000000100000000000010
  898.    '#*1000000000000101111111111011
  899.    '#*1000000000000101111111111011
  900.    '#*1001111111100101111001111011
  901.    '#*1001111111100101110000111011
  902.    '#*1000111111000101100000011011
  903.    '#*1000011110000101000000001011
  904.    '#*1000001100000101000000001011
  905.    '#*1000000000000101111111111011
  906.    '#*1000000000000101111111111011
  907.    '#*1000000000000101111111111011
  908.    '#*1000000000000100000000000011
  909.    '#*0111111111111111111111111111
  910.    '#*0011111111111111111111111110)
  911.  
  912. (defimage large-numeric-scroll-button
  913.    '#*01111111111111111111111111111100
  914.    '#*10000000000000010000000000000010
  915.    '#*10000000000000010000000000000011
  916.    '#*10000000000000010000000000000011
  917.    '#*10000000000000010000000000000011
  918.    '#*10000001100000010011111111110011
  919.    '#*10000011110000010011111111110011
  920.    '#*10000111111000010001111111100011
  921.    '#*10001111111100010000111111000011
  922.    '#*10011111111110010000011110000011
  923.    '#*10011111111110010000001100000011
  924.    '#*10000000000000010000000000000011
  925.    '#*10000000000000010000000000000011
  926.    '#*10000000000000010000000000000011
  927.    '#*10000000000000010000000000000011
  928.    '#*01111111111111111111111111111111
  929.    '#*00111111111111111111111111111110)
  930.  
  931. (defimage large-numeric-scroll-up-highlighted-button
  932.    '#*01111111111111111111111111111100
  933.    '#*10000000000000010000000000000010
  934.    '#*10111111111111010000000000000011
  935.    '#*10111111111111010000000000000011
  936.    '#*10111111111111010000000000000011
  937.    '#*10111110011111010011111111110011
  938.    '#*10111100001111010011111111110011
  939.    '#*10111000000111010001111111100011
  940.    '#*10110000000011010000111111000011
  941.    '#*10100000000001010000011110000011
  942.    '#*10100000000001010000001100000011
  943.    '#*10111111111111010000000000000011
  944.    '#*10111111111111010000000000000011
  945.    '#*10111111111111010000000000000011
  946.    '#*10000000000000010000000000000011
  947.    '#*01111111111111111111111111111111
  948.    '#*00111111111111111111111111111110)
  949.  
  950. (defimage large-numeric-scroll-down-highlighted-button
  951.    '#*01111111111111111111111111111100
  952.    '#*10000000000000010000000000000010
  953.    '#*10000000000000010111111111111011
  954.    '#*10000000000000010111111111111011
  955.    '#*10000000000000010111111111111011
  956.    '#*10000001100000010100000000001011
  957.    '#*10000011110000010100000000001011
  958.    '#*10000111111000010110000000011011
  959.    '#*10001111111100010111000000111011
  960.    '#*10011111111110010111100001111011
  961.    '#*10011111111110010111110011111011
  962.    '#*10000000000000010111111111111011
  963.    '#*10000000000000010111111111111011
  964.    '#*10000000000000010111111111111011
  965.    '#*10000000000000010000000000000011
  966.    '#*01111111111111111111111111111111
  967.    '#*00111111111111111111111111111110)
  968.  
  969. (defimage extra-large-numeric-scroll-button
  970.    '#*011111111111111111111111111111111111111111111100
  971.    '#*100000000000000000000001000000000000000000000010
  972.    '#*100000000000000000000001000000000000000000000011
  973.    '#*100000000000000000000001000000000000000000000011
  974.    '#*100000000000000000000001000000000000000000000011
  975.    '#*100000000000000000000001000000000000000000000011
  976.    '#*100000000000000000000001000000000000000000000011
  977.    '#*100000000000000000000001000000000000000000000011
  978.    '#*100000000001100000000001000011111111111111000011
  979.    '#*100000000011110000000001000011111111111111000011
  980.    '#*100000000111111000000001000001111111111110000011
  981.    '#*100000001111111100000001000000111111111100000011
  982.    '#*100000011111111110000001000000011111111000000011
  983.    '#*100000111111111111000001000000001111110000000011
  984.    '#*100001111111111111100001000000000111100000000011
  985.    '#*100001111111111111100001000000000011000000000011
  986.    '#*100000000000000000000001000000000000000000000011
  987.    '#*100000000000000000000001000000000000000000000011
  988.    '#*100000000000000000000001000000000000000000000011
  989.    '#*100000000000000000000001000000000000000000000011
  990.    '#*100000000000000000000001000000000000000000000011
  991.    '#*100000000000000000000001000000000000000000000011
  992.    '#*100000000000000000000001000000000000000000000011
  993.    '#*011111111111111111111111111111111111111111111111
  994.    '#*001111111111111111111111111111111111111111111110)
  995.  
  996. (defimage extra-large-numeric-scroll-up-highlighted-button
  997.    '#*011111111111111111111111111111111111111111111100
  998.    '#*100000000000000000000001000000000000000000000010
  999.    '#*101111111111111111111101000000000000000000000011
  1000.    '#*101111111111111111111101000000000000000000000011
  1001.    '#*101111111111111111111101000000000000000000000011
  1002.    '#*101111111111111111111101000000000000000000000011
  1003.    '#*101111111111111111111101000000000000000000000011
  1004.    '#*101111111111111111111101000000000000000000000011
  1005.    '#*101111111110011111111101000011111111111111000011
  1006.    '#*101111111100001111111101000011111111111111000011
  1007.    '#*101111111000000111111101000001111111111110000011
  1008.    '#*101111110000000011111101000000111111111100000011
  1009.    '#*101111100000000001111101000000011111111000000011
  1010.    '#*101111000000000000111101000000001111110000000011
  1011.    '#*101110000000000000011101000000000111100000000011
  1012.    '#*101110000000000000011101000000000011000000000011
  1013.    '#*101111111111111111111101000000000000000000000011
  1014.    '#*101111111111111111111101000000000000000000000011
  1015.    '#*101111111111111111111101000000000000000000000011
  1016.    '#*101111111111111111111101000000000000000000000011
  1017.    '#*101111111111111111111101000000000000000000000011
  1018.    '#*101111111111111111111101000000000000000000000011
  1019.    '#*100000000000000000000001000000000000000000000011
  1020.    '#*011111111111111111111111111111111111111111111111
  1021.    '#*001111111111111111111111111111111111111111111110)
  1022.  
  1023. (defimage extra-large-numeric-scroll-down-highlighted-button
  1024.    '#*011111111111111111111111111111111111111111111100
  1025.    '#*100000000000000000000001000000000000000000000010
  1026.    '#*100000000000000000000001011111111111111111111011
  1027.    '#*100000000000000000000001011111111111111111111011
  1028.    '#*100000000000000000000001011111111111111111111011
  1029.    '#*100000000000000000000001011111111111111111111011
  1030.    '#*100000000000000000000001011111111111111111111011
  1031.    '#*100000000000000000000001011111111111111111111011
  1032.    '#*100000000001100000000001011100000000000000111011
  1033.    '#*100000000011110000000001011100000000000000111011
  1034.    '#*100000000111111000000001011110000000000001111011
  1035.    '#*100000001111111100000001011111000000000011111011
  1036.    '#*100000011111111110000001011111100000000111111011
  1037.    '#*100000111111111111000001011111110000001111111011
  1038.    '#*100001111111111111100001011111111000011111111011
  1039.    '#*100001111111111111100001011111111100111111111011
  1040.    '#*100000000000000000000001011111111111111111111011
  1041.    '#*100000000000000000000001011111111111111111111011
  1042.    '#*100000000000000000000001011111111111111111111011
  1043.    '#*100000000000000000000001011111111111111111111011
  1044.    '#*100000000000000000000001011111111111111111111011
  1045.    '#*100000000000000000000001011111111111111111111011
  1046.    '#*100000000000000000000001000000000000000000000011
  1047.    '#*011111111111111111111111111111111111111111111111
  1048.    '#*001111111111111111111111111111111111111111111110)
  1049.  
  1050.  
  1051.  
  1052. ;;;----------------------------------------------------------------------------+
  1053. ;;;                                                                            |
  1054. ;;;                         Slider Geometry                                    |
  1055. ;;;                                                                            |
  1056. ;;;----------------------------------------------------------------------------+
  1057.  
  1058.  
  1059. (defconstant
  1060.   *slider-dimensions*
  1061.   (list
  1062.     :small       (make-slidebar    ;;10pt
  1063.            :drag-box-width     10
  1064.            :gap            1
  1065.            :bar-thickness    4
  1066.            :bar-drag-offset    5
  1067.            :tick-mark-length    5
  1068.            :tick-mark-offset    5
  1069.            :bar-text-offset    '(:horizontal (0 18) :vertical (10 9))
  1070.            )
  1071.     :medium      (make-slidebar    ;;12pt
  1072.            :drag-box-width     10
  1073.            :gap            1
  1074.            :bar-thickness    5
  1075.            :bar-drag-offset    5
  1076.            :tick-mark-length    6
  1077.            :tick-mark-offset    5
  1078.            :bar-text-offset    '(:horizontal (0 21) :vertical (12 11))
  1079.            )
  1080.     :large       (make-slidebar    ;;14pt
  1081.            :drag-box-width     12
  1082.            :gap            1
  1083.            :bar-thickness    6
  1084.            :bar-drag-offset    5
  1085.            :tick-mark-length    7
  1086.            :tick-mark-offset    6
  1087.            :bar-text-offset    '(:horizontal (0 24) :vertical (14 11))
  1088.            )
  1089.     :extra-large (make-slidebar    ;;19pt
  1090.            :drag-box-width     15
  1091.            :gap            2
  1092.            :bar-thickness    8
  1093.            :bar-drag-offset    6
  1094.            :tick-mark-length    9
  1095.            :tick-mark-offset    7
  1096.            :bar-text-offset    '(:horizontal (0 31) :vertical (18 11))
  1097.            ))
  1098.   "OPEN LOOK dimensions for slider bitmaps (in pixels).")
  1099.  
  1100. ;; Slider masks :
  1101. ;; first 1/2 of width is min end & second half is max end
  1102. ;; width = 2 times (floor (slider-drag-box-width slider) 2) ;; offset to center of tick mark
  1103. ;; width = height to make symmetrical for use in either orientation
  1104.  
  1105. (defimage small-bar-mask     ;;  HxW= 4x4 
  1106.   '#*0110
  1107.   '#*1111
  1108.   '#*1111
  1109.   '#*0110
  1110.   )
  1111.  
  1112. (defimage medium-bar-mask     ;;  HxW= 5x5 
  1113.   '#*01110
  1114.   '#*11111
  1115.   '#*11111
  1116.   '#*11111
  1117.   '#*01110
  1118.   )
  1119.  
  1120.  
  1121. (defimage large-bar-mask     ;;  HxW= 6x6 
  1122.   '#*011110
  1123.   '#*111111
  1124.   '#*111111
  1125.   '#*111111
  1126.   '#*111111
  1127.   '#*011110
  1128.   )
  1129.  
  1130. (defimage extra-large-bar-mask ;;  HxW= 6x6 
  1131.   '#*00111100
  1132.   '#*01111110
  1133.   '#*11111111
  1134.   '#*11111111
  1135.   '#*11111111
  1136.   '#*11111111
  1137.   '#*01111110
  1138.   '#*00111100
  1139.   )
  1140.  
  1141. (defimage small-bar-border     ;;  HxW= 4x4 
  1142.   '#*0110
  1143.   '#*1001
  1144.   '#*1001
  1145.   '#*0110
  1146.   )
  1147.  
  1148. (defimage medium-bar-border     ;;  HxW= 5x5 
  1149.   '#*01110
  1150.   '#*10001
  1151.   '#*10001
  1152.   '#*10001
  1153.   '#*01110
  1154.   )
  1155.  
  1156.  
  1157. (defimage large-bar-border     ;;  HxW= 6x6 
  1158.   '#*011110
  1159.   '#*100001
  1160.   '#*100001
  1161.   '#*100001
  1162.   '#*100001
  1163.   '#*011110
  1164.   )
  1165.  
  1166. (defimage extra-large-bar-border ;;  HxW= 8x8 
  1167.   '#*00111100
  1168.   '#*01000010
  1169.   '#*10000001
  1170.   '#*10000001
  1171.   '#*10000001
  1172.   '#*10000001
  1173.   '#*01000010
  1174.   '#*00111100
  1175.   )
  1176.  
  1177. (defparameter
  1178.   *slider-bar-images*
  1179.   (list
  1180.     :masks   (list
  1181.           :small       small-bar-mask
  1182.           :medium      medium-bar-mask
  1183.           :large       large-bar-mask
  1184.           :extra-large extra-large-bar-mask
  1185.           )
  1186.     :borders (list
  1187.           :small       small-bar-border
  1188.           :medium      medium-bar-border
  1189.           :large       large-bar-border
  1190.           :extra-large extra-large-bar-border
  1191.           )))
  1192.  
  1193.  
  1194.  
  1195. (defimage small-horizontal-drag-box ;; HxW=15x12
  1196.   '#*000000000000
  1197.   '#*001111111100
  1198.   '#*010000000110
  1199.   '#*010000000110
  1200.   '#*010000000110
  1201.   '#*010000000110
  1202.   '#*010000000110
  1203.   '#*010000000110
  1204.   '#*010000000110
  1205.   '#*010000000110
  1206.   '#*010000000110
  1207.   '#*010000000110
  1208.   '#*011111111110
  1209.   '#*001111111100
  1210.   '#*000000000000
  1211.   )
  1212.  
  1213. (defimage small-vertical-drag-box ;; HxW=12x15
  1214.   '#*000000000000000
  1215.   '#*001111111111100
  1216.   '#*010000000000110
  1217.   '#*010000000000110
  1218.   '#*010000000000110
  1219.   '#*010000000000110
  1220.   '#*010000000000110
  1221.   '#*010000000000110
  1222.   '#*010000000000110
  1223.   '#*011111111111110
  1224.   '#*001111111111100
  1225.   '#*000000000000000
  1226.   )
  1227.  
  1228.  
  1229. (defimage medium-horizontal-drag-box ;; HxW=16x12
  1230.   '#*000000000000
  1231.   '#*001111111100
  1232.   '#*010000000110
  1233.   '#*010000000110
  1234.   '#*010000000110
  1235.   '#*010000000110
  1236.   '#*010000000110
  1237.   '#*010000000110
  1238.   '#*010000000110
  1239.   '#*010000000110
  1240.   '#*010000000110
  1241.   '#*010000000110
  1242.   '#*010000000110
  1243.   '#*011111111110
  1244.   '#*001111111100
  1245.   '#*000000000000
  1246.   )
  1247.  
  1248.  
  1249. (defimage medium-vertical-drag-box ;; HxW=12x16
  1250.   '#*0000000000000000
  1251.   '#*0011111111111100
  1252.   '#*0100000000000110
  1253.   '#*0100000000000110
  1254.   '#*0100000000000110
  1255.   '#*0100000000000110
  1256.   '#*0100000000000110
  1257.   '#*0100000000000110
  1258.   '#*0100000000000110
  1259.   '#*0111111111111110
  1260.   '#*0011111111111100
  1261.   '#*0000000000000000
  1262.   )
  1263.  
  1264.  
  1265. (defimage large-horizontal-drag-box ;; HxW=19x14
  1266.   '#*00000000000000
  1267.   '#*00111111111100
  1268.   '#*01000000000110
  1269.   '#*01000000000110
  1270.   '#*01000000000110
  1271.   '#*01000000000110
  1272.   '#*01000000000110
  1273.   '#*01000000000110
  1274.   '#*01000000000110
  1275.   '#*01000000000110
  1276.   '#*01000000000110
  1277.   '#*01000000000110
  1278.   '#*01000000000110
  1279.   '#*01000000000110
  1280.   '#*01000000000110
  1281.   '#*01000000000110
  1282.   '#*01111111111110
  1283.   '#*00111111111100
  1284.   '#*00000000000000
  1285.   )
  1286.  
  1287. (defimage large-vertical-drag-box ;; HxW=14x19
  1288.   '#*0000000000000000000
  1289.   '#*0011111111111111100
  1290.   '#*0100000000000000110
  1291.   '#*0100000000000000110
  1292.   '#*0100000000000000110
  1293.   '#*0100000000000000110
  1294.   '#*0100000000000000110
  1295.   '#*0100000000000000110
  1296.   '#*0100000000000000110
  1297.   '#*0100000000000000110
  1298.   '#*0100000000000000110
  1299.   '#*0111111111111111110
  1300.   '#*0011111111111111100
  1301.   '#*0000000000000000000
  1302.   )
  1303.  
  1304.  
  1305. (defimage extra-large-horizontal-drag-box ;; HxW=25x19
  1306.   '#*0000000000000000000
  1307.   '#*0000000000000000000
  1308.   '#*0001111111111111000
  1309.   '#*0010000000000001100
  1310.   '#*0010000000000001100
  1311.   '#*0010000000000001100
  1312.   '#*0010000000000001100
  1313.   '#*0010000000000001100
  1314.   '#*0010000000000001100
  1315.   '#*0010000000000001100
  1316.   '#*0010000000000001100
  1317.   '#*0010000000000001100
  1318.   '#*0010000000000001100
  1319.   '#*0010000000000001100
  1320.   '#*0010000000000001100
  1321.   '#*0010000000000001100
  1322.   '#*0010000000000001100
  1323.   '#*0010000000000001100
  1324.   '#*0010000000000001100
  1325.   '#*0010000000000001100
  1326.   '#*0010000000000001100
  1327.   '#*0011111111111111000
  1328.   '#*0001111111111111000
  1329.   '#*0000000000000000000
  1330.   '#*0000000000000000000
  1331.   )
  1332.  
  1333. ;; Note: the shadow-width here is 1 less than you may expect, but matches engineering bitmaps
  1334. (defimage extra-large-vertical-drag-box ;; HxW=19x25
  1335.   '#*0000000000000000000000000
  1336.   '#*0000000000000000000000000
  1337.   '#*0001111111111111111111000
  1338.   '#*0010000000000000000001100
  1339.   '#*0010000000000000000001100
  1340.   '#*0010000000000000000001100
  1341.   '#*0010000000000000000001100
  1342.   '#*0010000000000000000001100
  1343.   '#*0010000000000000000001100
  1344.   '#*0010000000000000000001100
  1345.   '#*0010000000000000000001100
  1346.   '#*0010000000000000000001100
  1347.   '#*0010000000000000000001100
  1348.   '#*0010000000000000000001100
  1349.   '#*0010000000000000000001100
  1350.   '#*0011111111111111111111000
  1351.   '#*0001111111111111111111000
  1352.   '#*0000000000000000000000000
  1353.   '#*0000000000000000000000000
  1354.   )
  1355.  
  1356. (defvar
  1357.   *slider-drag-box-images*
  1358.   (list
  1359.     :vertical   (list 
  1360.           :small       small-vertical-drag-box
  1361.           :medium      medium-vertical-drag-box
  1362.           :large       large-vertical-drag-box
  1363.           :extra-large extra-large-vertical-drag-box
  1364.           )
  1365.     :horizontal (list 
  1366.           :small       small-horizontal-drag-box
  1367.           :medium      medium-horizontal-drag-box
  1368.           :large       large-horizontal-drag-box
  1369.           :extra-large extra-large-horizontal-drag-box
  1370.           )))
  1371.  
  1372.  
  1373.  
  1374. ;================================================================;
  1375. ;                                 ;
  1376. ;       OPEN LOOK MENU & PUSHPIN GEOMETRY               ;
  1377. ;                                 ;
  1378. ;================================================================;
  1379.  
  1380.  
  1381. (DEFCONSTANT *OL-menu-spec-alist*
  1382.   (let
  1383.     ((small/medium-pushpin-in
  1384.        (bitmap-image ()
  1385.              '#*00000001110000000000000000
  1386.              '#*00001110001100000000000000
  1387.              '#*00110100000100000000000000
  1388.              '#*01001000000010000000000000
  1389.              '#*01001000000010000000000000
  1390.              '#*10001000000010000000000000
  1391.              '#*10001100000100000000000000
  1392.              '#*10000110001100000000000000
  1393.              '#*11000111111100000000000000
  1394.              '#*01000001111000000000000000
  1395.              '#*01110000111000000000000000
  1396.              '#*11111111110000000000000000
  1397.              '#*11001111000000000000000000))
  1398.      
  1399.      (small/medium-pushpin-out
  1400.        (bitmap-image ()
  1401.              '#*00000000000000000000000000
  1402.              '#*00000000000001110000000000
  1403.              '#*00000000000001001000000110
  1404.              '#*00000000000001001000001001
  1405.              '#*00000000000001001111111001
  1406.              '#*00000000000001001000001001
  1407.              '#*00000111111111001000001001
  1408.              '#*00000011111111001000001001 
  1409.              '#*00000000000001001111111001
  1410.              '#*01100000000001001111111111
  1411.              '#*10010000000001111000001111
  1412.              '#*10010000000001111000000110
  1413.              '#*01100000000001110000000000))
  1414.      
  1415.      (large/extra-large-pushpin-in
  1416.        (bitmap-image ()
  1417.              '#*00000000111000000000000000000
  1418.              '#*00000111000110000000000000000
  1419.              '#*00011100000001000000000000000
  1420.              '#*00100100000001000000000000000
  1421.              '#*01001000000000100000000000000
  1422.              '#*01001000000000100000000000000
  1423.              '#*10001000000000100000000000000
  1424.              '#*10001100000001100000000000000
  1425.              '#*10000100000001000000000000000
  1426.              '#*11000111000111000000000000000
  1427.              '#*01000011111110000000000000000
  1428.              '#*01100000111110000000000000000
  1429.              '#*01111000011100000000000000000
  1430.              '#*11111111111000000000000000000
  1431.              '#*11000111100000000000000000000))
  1432.      
  1433.      (large/extra-large-pushpin-out
  1434.        (bitmap-image ()
  1435.              '#*00000000000000000000000000000
  1436.              '#*00000000000000011100000000110
  1437.              '#*00000000000000010010000001001
  1438.              '#*00000000000000010010000001001
  1439.              '#*00000000000000010011111111001
  1440.              '#*00000000000000010010000001001
  1441.              '#*00000000000000010010000001001
  1442.              '#*00000111111111110010000001001
  1443.              '#*00000011111111110010000001001
  1444.              '#*00000000000000010010000001001
  1445.              '#*00000000000000010011111111001
  1446.              '#*01100000000000010011111111111
  1447.              '#*10010000000000011110000001111
  1448.              '#*10010000000000011110000000110
  1449.              '#*01100000000000011100000000000)))
  1450.     
  1451.     (let
  1452.       ((small-OL-menu-spec
  1453.       (make-OL-menu-spec
  1454.         :scale :small
  1455.         :pushpin  (make-pushpin-spec
  1456.             :scale :small
  1457.             :box-width 26
  1458.             :box-height 13
  1459.             :baseline 9        ;Relative top of box
  1460.             :image-in small/medium-pushpin-in
  1461.             :image-out small/medium-pushpin-out
  1462.             :default-ring-image ()    ;These are 
  1463.             :ring-x -1        ; all 
  1464.             :ring-y -1        ;  dummies for now
  1465.             :left-margin 0
  1466.             :top-margin 0    
  1467.             :bottom-margin 0)
  1468.         
  1469.         :pushpin-dx    7            ;horizontal distance from border to left of image
  1470.         :pushpin-dy   13            ;vertical distance from border to pushpin baseline
  1471.         :title-bar-dx  2            ;horizontal distance from border to title bar (left & right)
  1472.         :title-bar-dy  7            ;vertical distance from title baseline to title bar
  1473.         :title-dx       8            ;horizontal (minimum) left & right title margins
  1474.         :title-dy     13            ;vertical distance from menu border to title baseline
  1475.         :drop-shadow-width  5
  1476.         :drop-shadow-offset 6 ))
  1477.     
  1478.        (medium-OL-menu-spec
  1479.       (make-OL-menu-spec
  1480.         :scale :medium
  1481.         :pushpin  (make-pushpin-spec
  1482.             :scale :medium
  1483.             :box-width 26
  1484.             :box-height 13
  1485.             :baseline 10        ;Relative top of box
  1486.             :image-in small/medium-pushpin-in
  1487.             :image-out small/medium-pushpin-out
  1488.             :default-ring-image ()    ;These are 
  1489.             :ring-x -1        ; all 
  1490.             :ring-y -1        ;  dummies for now
  1491.             :left-margin 0
  1492.             :top-margin 0
  1493.             :bottom-margin 0)
  1494.         
  1495.         :pushpin-dx    8            ;horizontal distance from border to left of image
  1496.         :pushpin-dy   15            ;vertical distance from border to pushpin baseline
  1497.         :title-bar-dx  2            ;horizontal distance from border to title bar (left & right)
  1498.         :title-bar-dy  7            ;vertical distance from title baseline to title bar
  1499.         :title-dx       9            ;horizontal (minimum) left & right title margins
  1500.         :title-dy     15            ;vertical distance from menu border to title baseline
  1501.         :drop-shadow-width  6
  1502.         :drop-shadow-offset 7 ))
  1503.     
  1504.        (large-OL-menu-spec
  1505.       (make-OL-menu-spec
  1506.         :scale :large
  1507.         :pushpin  (make-pushpin-spec
  1508.             :scale :large
  1509.             :box-width 29
  1510.             :box-height 15
  1511.             :baseline 11        ;Relative top of box
  1512.             :image-in large/extra-large-pushpin-in
  1513.             :image-out large/extra-large-pushpin-out
  1514.             :default-ring-image ()    ;These are 
  1515.             :ring-x -1        ; all 
  1516.             :ring-y -1        ;  dummies for now
  1517.             :left-margin 0
  1518.             :top-margin 0        ;pushpin baseline relative to image
  1519.             :bottom-margin 0)
  1520.         
  1521.         :pushpin-dx    9            ;horizontal distance from border to left of image
  1522.         :pushpin-dy   18            ;vertical distance from border to pushpin baseline
  1523.         :title-bar-dx  3            ;horizontal distance from border to title bar (left & right)
  1524.         :title-bar-dy 10            ;vertical distance from title baseline to title bar
  1525.         :title-dx      10            ;horizontal (minimum) left & right title margins
  1526.         :title-dy     18            ;vertical distance from menu border to title baseline
  1527.         :drop-shadow-width  7
  1528.         :drop-shadow-offset 8 ))
  1529.     
  1530.        (extra-large-OL-menu-spec
  1531.       (make-OL-menu-spec
  1532.         :scale :extra-large
  1533.         :pushpin  (make-pushpin-spec
  1534.             :scale :extra-large
  1535.             :box-width 29
  1536.             :box-height 15
  1537.             :baseline 11        ;Relative top of box
  1538.             :image-in large/extra-large-pushpin-in
  1539.             :image-out large/extra-large-pushpin-out
  1540.             :default-ring-image ()    ;These are 
  1541.             :ring-x -1        ; all 
  1542.             :ring-y -1        ;  dummies for now
  1543.             :left-margin 0
  1544.             :top-margin  0        ;pushpin baseline relative to image
  1545.             :bottom-margin  0)
  1546.         
  1547.         :pushpin-dx   13            ;horizontal distance from border to left of image
  1548.         :pushpin-dy   21            ;vertical distance from border to pushpin baseline
  1549.         :title-bar-dx  3            ;horizontal distance from border to title bar (left & right)
  1550.         :title-bar-dy 11            ;vertical distance from title baseline to title bar
  1551.         :title-dx    14            ;horizontal (minimum) left & right title margins
  1552.         :title-dy     21            ;vertical distance from menu border to title baseline
  1553.         :drop-shadow-width  9
  1554.         :drop-shadow-offset 10)))
  1555.     
  1556.   `((:small . ,small-OL-menu-spec)
  1557.     (:medium . ,medium-OL-menu-spec)
  1558.     (:large . ,large-OL-menu-spec)
  1559.     (:extra-large . ,extra-large-OL-menu-spec)) )))
  1560.  
  1561. ;;; ==========================================================================================    ;;;
  1562. ;;; ==========================================================================================    ;;;
  1563. ;;;                                                ;;;
  1564. ;;;             Action Button Ends, Default Rings, and Menu Marks                ;;;
  1565. ;;;                                                ;;;
  1566. ;;; ==========================================================================================    ;;;
  1567. ;;; ==========================================================================================    ;;;
  1568.  
  1569. (defimage small-horizontal-menu-mark
  1570.   '#*00000000
  1571.   '#*01100000
  1572.   '#*01011000
  1573.   '#*01000110
  1574.   '#*01000001
  1575.   '#*01000110
  1576.   '#*01011000
  1577.   '#*01100000)
  1578.  
  1579. (defimage small-vertical-menu-mark
  1580.   '#*00000000
  1581.   '#*11111110
  1582.   '#*10000010
  1583.   '#*01000100
  1584.   '#*01000100
  1585.   '#*00101000
  1586.   '#*00101000
  1587.   '#*00010000)
  1588.  
  1589. (defimage medium-horizontal-menu-mark
  1590.   '#*00000000
  1591.   '#*01100000
  1592.   '#*01011000
  1593.   '#*01000110
  1594.   '#*01000001
  1595.   '#*01000110
  1596.   '#*01011000
  1597.   '#*01100000)
  1598.  
  1599. (defimage medium-vertical-menu-mark
  1600.   '#*00000000
  1601.   '#*11111110
  1602.   '#*10000010
  1603.   '#*01000100
  1604.   '#*01000100
  1605.   '#*00101000
  1606.   '#*00101000
  1607.   '#*00010000)
  1608.  
  1609. (defimage large-horizontal-menu-mark
  1610.   '#*000000000000
  1611.   '#*011000000000
  1612.   '#*010110000000
  1613.   '#*010001100000
  1614.   '#*010000011000
  1615.   '#*010000000110
  1616.   '#*010000000001
  1617.   '#*010000000110
  1618.   '#*010000011000
  1619.   '#*010001100000
  1620.   '#*010110000000
  1621.   '#*011000000000)
  1622.  
  1623. (defimage large-vertical-menu-mark
  1624.   '#*000000000000
  1625.   '#*111111111110
  1626.   '#*100000000010
  1627.   '#*010000000100
  1628.   '#*010000000100
  1629.   '#*001000001000
  1630.   '#*001000001000
  1631.   '#*000100010000
  1632.   '#*000100010000
  1633.   '#*000010100000
  1634.   '#*000010100000
  1635.   '#*000001000000)
  1636.  
  1637. (defimage extra-large-horizontal-menu-mark
  1638.   '#*00000000000000
  1639.   '#*01100000000000
  1640.   '#*01011000000000
  1641.   '#*01000110000000
  1642.   '#*01000001100000
  1643.   '#*01000000011000
  1644.   '#*01000000000110
  1645.   '#*01000000000001
  1646.   '#*01000000000110
  1647.   '#*01000000011000
  1648.   '#*01000001100000
  1649.   '#*01000110000000
  1650.   '#*01011000000000
  1651.   '#*01100000000000)
  1652.  
  1653. (defimage extra-large-vertical-menu-mark
  1654.   '#*00000000000000
  1655.   '#*11111111111110
  1656.   '#*10000000000010
  1657.   '#*01000000000100
  1658.   '#*01000000000100
  1659.   '#*00100000001000
  1660.   '#*00100000001000
  1661.   '#*00010000010000
  1662.   '#*00010000010000
  1663.   '#*00001000100000
  1664.   '#*00001000100000
  1665.   '#*00000101000000
  1666.   '#*00000101000000
  1667.   '#*00000010000000)
  1668.  
  1669.  
  1670. ;;;
  1671. ;;;    The following abbreviated menu button definitions define only the border.
  1672. ;;;    The left/down facing menu marks or ellipses are considered to be the label of
  1673. ;;;    the button.  The abbreviated-menu-button-specs describe how to draw each size.
  1674. ;;;
  1675.  
  1676. (defimage small-abbreviated-menu-button-border
  1677.   '#*01111111111100
  1678.   '#*10000000000010
  1679.   '#*10000000000011
  1680.   '#*10000000000011
  1681.   '#*10000000000011
  1682.   '#*10000000000011
  1683.   '#*10000000000011
  1684.   '#*10000000000011
  1685.   '#*10000000000011
  1686.   '#*10000000000011
  1687.   '#*10000000000011
  1688.   '#*01111111111111
  1689.   '#*00111111111110)
  1690.  
  1691. (defimage medium-abbreviated-menu-button-border
  1692.   '#*0111111111111100
  1693.   '#*1000000000000010
  1694.   '#*1000000000000011
  1695.   '#*1000000000000011
  1696.   '#*1000000000000011
  1697.   '#*1000000000000011
  1698.   '#*1000000000000011
  1699.   '#*1000000000000011
  1700.   '#*1000000000000011
  1701.   '#*1000000000000011
  1702.   '#*1000000000000011
  1703.   '#*1000000000000011
  1704.   '#*1000000000000011
  1705.   '#*0111111111111111
  1706.   '#*0011111111111110)
  1707.  
  1708. (defimage large-abbreviated-menu-button-border
  1709.   '#*011111111111111100
  1710.   '#*100000000000000010
  1711.   '#*100000000000000011
  1712.   '#*100000000000000011
  1713.   '#*100000000000000011
  1714.   '#*100000000000000011
  1715.   '#*100000000000000011
  1716.   '#*100000000000000011
  1717.   '#*100000000000000011
  1718.   '#*100000000000000011
  1719.   '#*100000000000000011
  1720.   '#*100000000000000011
  1721.   '#*100000000000000011
  1722.   '#*100000000000000011
  1723.   '#*100000000000000011
  1724.   '#*100000000000000011
  1725.   '#*011111111111111111
  1726.   '#*001111111111111110)
  1727.  
  1728. (defimage extra-large-abbreviated-menu-button-border
  1729.   '#*0011111111111111111000
  1730.   '#*0100000000000000000100
  1731.   '#*1000000000000000000010
  1732.   '#*1000000000000000000011
  1733.   '#*1000000000000000000011
  1734.   '#*1000000000000000000011
  1735.   '#*1000000000000000000011
  1736.   '#*1000000000000000000011
  1737.   '#*1000000000000000000011
  1738.   '#*1000000000000000000011
  1739.   '#*1000000000000000000011
  1740.   '#*1000000000000000000011
  1741.   '#*1000000000000000000011
  1742.   '#*1000000000000000000011
  1743.   '#*1000000000000000000011
  1744.   '#*1000000000000000000011
  1745.   '#*1000000000000000000011
  1746.   '#*1000000000000000000011
  1747.   '#*0100000000000000000111
  1748.   '#*0011111111111111111110
  1749.   '#*0001111111111111111100)
  1750.  
  1751.  
  1752.       
  1753. (defimage small-action-button-ends
  1754.   '#*00000011110000000
  1755.   '#*00001100001100000
  1756.   '#*00010000000010000
  1757.   '#*00100000000001000
  1758.   '#*01000000000000100
  1759.   '#*01000000000000110
  1760.   '#*10000000000000010
  1761.   '#*10000000000000011
  1762.   '#*10000000000000011
  1763.   '#*10000000000000011
  1764.   '#*10000000000000011
  1765.   '#*01000000000000111
  1766.   '#*01000000000000110
  1767.   '#*00100000000001110
  1768.   '#*00010000000011100
  1769.   '#*00001100001111000
  1770.   '#*00000111111110000
  1771.   '#*00000001111000000)
  1772.  
  1773. (defimage medium-action-button-ends
  1774.   '#*0000001111110000000
  1775.   '#*0000110000001100000
  1776.   '#*0001000000000010000
  1777.   '#*0010000000000001000
  1778.   '#*0100000000000000100
  1779.   '#*0100000000000000110
  1780.   '#*1000000000000000010
  1781.   '#*1000000000000000011
  1782.   '#*1000000000000000011
  1783.   '#*1000000000000000011
  1784.   '#*1000000000000000011
  1785.   '#*1000000000000000011
  1786.   '#*1000000000000000011
  1787.   '#*0100000000000000111
  1788.   '#*0100000000000000110
  1789.   '#*0010000000000001110
  1790.   '#*0001000000000011100
  1791.   '#*0000110000001111000
  1792.   '#*0000011111111110000
  1793.   '#*0000001111111000000)
  1794.  
  1795. (defimage large-action-button-ends
  1796.   '#*00000001111111100000000
  1797.   '#*00000110000000011000000
  1798.   '#*00001000000000000100000
  1799.   '#*00010000000000000010000
  1800.   '#*00100000000000000001000
  1801.   '#*01000000000000000000100
  1802.   '#*01000000000000000000110
  1803.   '#*10000000000000000000010
  1804.   '#*10000000000000000000011
  1805.   '#*10000000000000000000011
  1806.   '#*10000000000000000000011
  1807.   '#*10000000000000000000011
  1808.   '#*10000000000000000000011
  1809.   '#*10000000000000000000011
  1810.   '#*01000000000000000000111
  1811.   '#*01000000000000000000110
  1812.   '#*00100000000000000001110
  1813.   '#*00010000000000000011100
  1814.   '#*00001000000000000111000
  1815.   '#*00000110000000011110000
  1816.   '#*00000011111111111100000
  1817.   '#*00000000111111110000000)
  1818.  
  1819. (defimage extra-large-action-button-ends
  1820.   '#*000000000011111100000000000
  1821.   '#*000000011100000011100000000
  1822.   '#*000000110000000000110000000
  1823.   '#*000011000000000000001100000
  1824.   '#*000110000000000000000110000
  1825.   '#*000100000000000000000011000
  1826.   '#*001000000000000000000001000
  1827.   '#*011000000000000000000001100
  1828.   '#*010000000000000000000000110
  1829.   '#*010000000000000000000000110
  1830.   '#*100000000000000000000000010
  1831.   '#*100000000000000000000000011
  1832.   '#*100000000000000000000000011
  1833.   '#*100000000000000000000000011
  1834.   '#*100000000000000000000000011
  1835.   '#*100000000000000000000000011
  1836.   '#*100000000000000000000000011
  1837.   '#*010000000000000000000000111
  1838.   '#*010000000000000000000000110
  1839.   '#*011000000000000000000001110
  1840.   '#*001000000000000000000001110
  1841.   '#*000100000000000000000011100
  1842.   '#*000110000000000000000111000
  1843.   '#*000011000000000000001111000
  1844.   '#*000001110000000000111110000
  1845.   '#*000000011100000001111100000
  1846.   '#*000000001111111111111000000
  1847.   '#*000000000011111111000000000)
  1848.  
  1849.  
  1850.  
  1851. ;;;
  1852. ;;;    Note that the following default-ring images for use in the ends of an
  1853. ;;;    action-button/action-item are sized to be positioned *within* the border of an
  1854. ;;;    action-button.  That is, they are 3 pixels shorter in height than the above button-end
  1855. ;;;    images.  This is because they must be displayed within a (borderless) action-item as well
  1856. ;;;    as an action-button.  Their :y coordinate is always (ab-top-border-width ab), which is 1
  1857. ;;;    for an action-button, 0 for an action-item.
  1858.  
  1859. (defimage small-action-button-default-ring
  1860.   '#*00000000000000000
  1861.   '#*00000001100000000
  1862.   '#*00000110011000000
  1863.   '#*00001000000100000
  1864.   '#*00010000000010000
  1865.   '#*00010000000010000
  1866.   '#*00100000000001000
  1867.   '#*00100000000001000
  1868.   '#*00100000000001000
  1869.   '#*00010000000010000
  1870.   '#*00010000000010000
  1871.   '#*00001000000100000
  1872.   '#*00000110011000000
  1873.   '#*00000001100000000
  1874.   '#*00000000000000000)
  1875.  
  1876. (defimage medium-action-button-default-ring
  1877.   '#*0000000000000000000
  1878.   '#*0000000111100000000
  1879.   '#*0000011000011000000
  1880.   '#*0000100000000100000
  1881.   '#*0001000000000010000
  1882.   '#*0001000000000010000
  1883.   '#*0010000000000001000
  1884.   '#*0010000000000001000
  1885.   '#*0010000000000001000
  1886.   '#*0010000000000001000
  1887.   '#*0010000000000001000
  1888.   '#*0001000000000010000
  1889.   '#*0001000000000010000
  1890.   '#*0000100000000100000
  1891.   '#*0000011000011000000
  1892.   '#*0000000111100000000
  1893.   '#*0000000000000000000)
  1894.  
  1895. (defimage large-action-button-default-ring
  1896.   '#*00000000000000000000000
  1897.   '#*00000000111111000000000
  1898.   '#*00000011000000110000000
  1899.   '#*00000100000000001000000
  1900.   '#*00001000000000000100000
  1901.   '#*00010000000000000010000
  1902.   '#*00010000000000000010000
  1903.   '#*00100000000000000001000
  1904.   '#*00100000000000000001000
  1905.   '#*00100000000000000001000
  1906.   '#*00100000000000000001000
  1907.   '#*00100000000000000001000
  1908.   '#*00010000000000000010000
  1909.   '#*00010000000000000010000
  1910.   '#*00001000000000000100000
  1911.   '#*00000100000000001000000
  1912.   '#*00000110000000011000000
  1913.   '#*00000001111110000000000
  1914.   '#*00000000000000000000000)
  1915.  
  1916. (defimage extra-large-action-button-default-ring
  1917.   '#*000000000000000000000000000
  1918.   '#*000000000001111000000000000
  1919.   '#*000000000110000110000000000
  1920.   '#*000000011000000001100000000
  1921.   '#*000000100000000000010000000
  1922.   '#*000001000000000000001000000
  1923.   '#*000010000000000000000100000
  1924.   '#*000010000000000000000100000
  1925.   '#*000100000000000000000010000
  1926.   '#*000100000000000000000010000
  1927.   '#*001000000000000000000001000
  1928.   '#*001000000000000000000001000
  1929.   '#*001000000000000000000001000
  1930.   '#*001000000000000000000001000
  1931.   '#*001000000000000000000001000
  1932.   '#*000100000000000000000010000
  1933.   '#*000100000000000000000010000
  1934.   '#*000010000000000000000100000
  1935.   '#*000010000000000000000100000
  1936.   '#*000001000000000000001000000
  1937.   '#*000000100000000000010000000
  1938.   '#*000000011000000001100000000
  1939.   '#*000000000110000110000000000
  1940.   '#*000000000001111000000000000
  1941.   '#*000000000000000000000000000)
  1942.  
  1943.  
  1944. (defimage small-action-item-default-ring
  1945.   '#*0000011111100000
  1946.   '#*0001100000011000
  1947.   '#*0010000000000100
  1948.   '#*0100000000000010
  1949.   '#*0100000000000010
  1950.   '#*1000000000000001
  1951.   '#*1000000000000001
  1952.   '#*1000000000000001
  1953.   '#*1000000000000001
  1954.   '#*1000000000000001
  1955.   '#*1000000000000001
  1956.   '#*0100000000000010
  1957.   '#*0100000000000010
  1958.   '#*0010000000000100
  1959.   '#*0001100000011000
  1960.   '#*0000011111100000)
  1961.  
  1962. (defimage medium-action-item-default-ring
  1963.   '#*000000111111000000
  1964.   '#*000011000000110000
  1965.   '#*000100000000001000
  1966.   '#*001000000000000100
  1967.   '#*010000000000000010
  1968.   '#*010000000000000010
  1969.   '#*100000000000000001
  1970.   '#*100000000000000001
  1971.   '#*100000000000000001
  1972.   '#*100000000000000001
  1973.   '#*100000000000000001
  1974.   '#*100000000000000001
  1975.   '#*010000000000000010
  1976.   '#*010000000000000010
  1977.   '#*001000000000000100
  1978.   '#*000100000000001000
  1979.   '#*000011000000110000
  1980.   '#*000000111111000000)
  1981.  
  1982.  
  1983. (defimage large-action-item-default-ring
  1984.   '#*00000001111110000000
  1985.   '#*00000110000001100000
  1986.   '#*00001000000000010000
  1987.   '#*00010000000000001000
  1988.   '#*00100000000000000100
  1989.   '#*01000000000000000010
  1990.   '#*01000000000000000010
  1991.   '#*10000000000000000001
  1992.   '#*10000000000000000001
  1993.   '#*10000000000000000001
  1994.   '#*10000000000000000001
  1995.   '#*10000000000000000001
  1996.   '#*10000000000000000001
  1997.   '#*01000000000000000010
  1998.   '#*01000000000000000010
  1999.   '#*00100000000000000100
  2000.   '#*00010000000000001000
  2001.   '#*00001000000000010000
  2002.   '#*00000110000001100000
  2003.   '#*00000001111110000000)
  2004.  
  2005. (defimage extra-large-action-item-default-ring
  2006.   '#*0000000011111111111100000000
  2007.   '#*0000001100000000000011000000
  2008.   '#*0000110000000000000000110000
  2009.   '#*0001000000000000000000001000
  2010.   '#*0010000000000000000000000100
  2011.   '#*0010000000000000000000000100
  2012.   '#*0100000000000000000000000010
  2013.   '#*0100000000000000000000000010
  2014.   '#*1000000000000000000000000001
  2015.   '#*1000000000000000000000000001
  2016.   '#*1000000000000000000000000001
  2017.   '#*1000000000000000000000000001
  2018.   '#*1000000000000000000000000001
  2019.   '#*1000000000000000000000000001
  2020.   '#*1000000000000000000000000001
  2021.   '#*0100000000000000000000000010
  2022.   '#*0100000000000000000000000010
  2023.   '#*0010000000000000000000000100
  2024.   '#*0010000000000000000000000100
  2025.   '#*0001000000000000000000001000
  2026.   '#*0000110000000000000000110000
  2027.   '#*0000001100000000000011000000
  2028.   '#*0000000011111111111100000000)
  2029.  
  2030. ;;; ==========================================================================================    ;;;
  2031. ;;; ==========================================================================================    ;;;
  2032. ;;;                                                ;;;
  2033. ;;;                         More-Text Arrows                    ;;;
  2034. ;;;                                                ;;;
  2035. ;;; ==========================================================================================    ;;;
  2036. ;;; ==========================================================================================    ;;;
  2037.  
  2038. ;;;  Note:  These arrows are "tightly" sized.  They are not the height of their scales' text.
  2039. ;;;  The More-Text-Arrow structure entry :offset-from-baseline is the amount to add to the text
  2040. ;;;  baseline to get the position of the top of the arrow.  
  2041.  
  2042. (defimage small-more-text-arrow
  2043.   '#*10000
  2044.   '#*01000
  2045.   '#*10100
  2046.   '#*01010
  2047.   '#*10101
  2048.   '#*01010
  2049.   '#*10100
  2050.   '#*01000
  2051.   '#*10000)
  2052.  
  2053. (defimage medium-more-text-arrow
  2054.   '#*10000
  2055.   '#*01000
  2056.   '#*10100
  2057.   '#*01010
  2058.   '#*10101
  2059.   '#*01010
  2060.   '#*10100
  2061.   '#*01000
  2062.   '#*10000)
  2063.  
  2064. (defimage large-more-text-arrow
  2065.   '#*100000
  2066.   '#*010000
  2067.   '#*101000
  2068.   '#*010100
  2069.   '#*101010
  2070.   '#*010101
  2071.   '#*101010
  2072.   '#*010100
  2073.   '#*101000
  2074.   '#*010000
  2075.   '#*100000)
  2076.  
  2077. (defimage extra-large-more-text-arrow
  2078.   '#*10000000
  2079.   '#*01000000
  2080.   '#*10100000
  2081.   '#*01010000
  2082.   '#*10101000
  2083.   '#*01010100
  2084.   '#*10101010
  2085.   '#*01010101
  2086.   '#*10101010
  2087.   '#*01010100
  2088.   '#*10101000
  2089.   '#*01010000
  2090.   '#*10100000
  2091.   '#*01000000
  2092.   '#*10000000)
  2093.  
  2094.  
  2095.  
  2096.  
  2097.  
  2098. (defparameter *more-text-arrows-by-scale*
  2099.   (list
  2100.     :small       (make-more-text-arrow
  2101.            :image          small-more-text-arrow
  2102.            :name           'small-more-text-arrow
  2103.            :offset-from-baseline -8
  2104.            :offset-from-text     4)
  2105.     :medium      (make-more-text-arrow
  2106.            :image          medium-more-text-arrow
  2107.            :name           'medium-more-text-arrow
  2108.            :offset-from-baseline -9
  2109.            :offset-from-text     4)
  2110.     :large       (make-more-text-arrow
  2111.            :image          large-more-text-arrow
  2112.            :name           'large-more-text-arrow
  2113.            :offset-from-baseline -11
  2114.            :offset-from-text     5)
  2115.     :extra-large (make-more-text-arrow
  2116.            :image          extra-large-more-text-arrow
  2117.            :name           'extra-large-more-text-arrow
  2118.            :offset-from-baseline -13
  2119.            :offset-from-text     7)))
  2120.  
  2121.  
  2122. ;;; ==========================================================================================    ;;;
  2123. ;;; ==========================================================================================    ;;;
  2124. ;;;                                                ;;;
  2125. ;;;                        The Standard Open Look Cursor                ;;;
  2126. ;;;                                                ;;;
  2127. ;;; ==========================================================================================    ;;;
  2128. ;;; ==========================================================================================    ;;;
  2129.  
  2130. (defimage open-look-arrow-cursor
  2131.    '#*000000000000000000
  2132.    '#*011000000000000000
  2133.    '#*011110000000000000
  2134.    '#*001111100000000000
  2135.    '#*001111111000000000
  2136.    '#*000111111110000000
  2137.    '#*000111111111100000
  2138.    '#*000011111111100000
  2139.    '#*000011111100000000
  2140.    '#*000001111110000000
  2141.    '#*000001110111000000
  2142.    '#*000000110011100000
  2143.    '#*000000110001110000
  2144.    '#*000000000000111000
  2145.    '#*000000000000011100
  2146.    '#*000000000000001110
  2147.    '#*000000000000000110
  2148.    '#*000000000000000000)
  2149.  
  2150. (defimage open-look-arrow-cursor-mask
  2151.    '#*111100000000000000
  2152.    '#*111111000000000000
  2153.    '#*111111110000000000
  2154.    '#*111111111100000000
  2155.    '#*011111111111000000
  2156.    '#*011111111111110000
  2157.    '#*001111111111110000
  2158.    '#*001111111111110000
  2159.    '#*000111111111110000
  2160.    '#*000111111111000000
  2161.    '#*000011111111100000
  2162.    '#*000011111111110000
  2163.    '#*000001111011111000
  2164.    '#*000001111001111100
  2165.    '#*000000000000111110
  2166.    '#*000000000000011111
  2167.    '#*000000000000001111
  2168.    '#*000000000000000111)
  2169.  
  2170.